#ifndef _PCH_TYPEDEF_H_
#define _PCH_TYPEDEF_H_

#define CONST_APP_NAME	"AS_FS"

#define RESIPROCATE_SUBSYSTEM Subsystem::APP

//////////////////////////////////////////////////////////////////////////
//
#define __LOCK(lockKey) {e::sys::ScopedLock _LOCK_(lockKey)
#define __UNLOCK() }

typedef boost::shared_ptr<resip::SipMessage> SipMessagePtr;
typedef boost::shared_ptr<void> VoidPtr;

//////////////////////////////////////////////////////////////////////////
PTR_DEF_I(IProcessor);
PTR_DEF_I(IParallelWork);
PTR_DEF_I(IWork);
PTR_DEF_I(IThreadPool);
PTR_DEF_I(ISqlExecutor);
//////////////////////////////////////////////////////////////////////////
PTR_DEF_I(IAccountDBAP);

//////////////////////////////////////////////////////////////////////////
PTR_DEF_I(IUser);
PTR_DEF_I(IUserCache);
//////////////////////////////////////////////////////////////////////////
PTR_DEF_I(IConfig);
//////////////////////////////////////////////////////////////////////////
PTR_DEF_I(ICallSession);
PTR_DEF_I(ICallSessionCache);

#endif